Scripting Help and Guide

The Nitrous Voice Flux Scripting Language is a new, advanced way to interact with Voice Flux. It allows you to do everything Voice Flux normally lets you do and more. The best way to add this advanced functionality is with a scripting language. Below is a explanation of how Voice Flux Scripting works.

The scripting language is very simple. Commands start with a ‘$’ and end with a ‘$’ followed by any parameters. See example below:

$say$This is an example
$run$C:\windows\notepad.exe

There are several commands you can use:

$say$
$run$
$type$
$mousepos$
$mousemove$
$mouseclick$
$minwin$
$maxwin$
$restorewin$
$closewin$
$reboot$
$shutdown$
$logoff$
$start$
$stop$
$exitnvf$

Each command will be explained below:

$say$
This command allows you to have the computer say a line of text. (like say the time or date; explained below).

Ex. $say$Today's Date is #wd the #dy of #wm, #yr

$say$ command parameters. The parameters is shown followed by a description and an example of what the parameter returns:

#sh – Standard Hours; 12
#mh – Military Hours; 24
#mm – Minutes; 32
#ss – Seconds; 10
#dy – Day; 4th
#wd – Weekday; Monday
#yr – Year; 2002
#wm – Month; July
#nm – Month; 7
#ap – AM or PM; PM

Ex. 
$say$Today's Date is #wd the #dy of #wm, #yr
 This will say this 
Today’s Date is Wensday the 6th of July, 2032

$run$
This command will run a program or open a file or location just like you would normally in Voice Flux, but you can now use this command many times to open as many programs as you want.

Ex. $run$C:\Windows\notepad.exe

$type$
This command will type keys as if from the keyboard. You must used special rules:

For most of the keys on the keyboard, simply type the key, with the following exceptions:

The plus sign (+), caret (^), percent sign (%), tilde (~), and parentheses ( ) have special meanings. To specify one of these characters, enclose it within braces ({}). For example, to specify the plus sign, use {+}.

To specify characters that aren't displayed when you press a key, such as ENTER or TAB, and keys that represent actions rather than characters, use the codes shown below:

Key	Code
BACKSPACE	{BACKSPACE}, 
	{BS}, or {BKSP}
BREAK	{BREAK}
CAPS LOCK	{CAPSLOCK}
DEL or DELETE	{DELETE} or {DEL}
DOWN ARROW	{DOWN}
END	{END}
ENTER 	{ENTER} or ~
ESC	{ESC}
HELP	{HELP}
HOME	{HOME}
INS or INSERT	{INSERT} or {INS}
LEFT ARROW	{LEFT}
NUM LOCK	{NUMLOCK}
PAGE DOWN	{PGDN}
PAGE UP	{PGUP}
PRINT SCREEN	{PRTSC}
RIGHT ARROW	{RIGHT}
SCROLL LOCK	{SCROLLLOCK}
TAB	{TAB}
UP ARROW	{UP}
F1	{F1}
F2	{F2}
F3	{F3}
F4	{F4}
F5	{F5}
F6	{F6}
F7	{F7}
F8	{F8}
F9	{F9}
F10	{F10}
F11	{F11}
F12	{F12}
F13	{F13}
F14	{F14}
F15	{F15}
F16	{F16}

To specify keys combined with any combination of the SHIFT, CTRL, and ALT keys, precede the key code with one or more of the following codes:

Key	Code
SHIFT	+
CTRL 	^
ALT	%

To specify that any combination of SHIFT, CTRL, and ALT should be held down while several other keys are pressed, enclose the code for those keys in parentheses. For example, to specify to hold down SHIFT while E and C are pressed, use "+(EC)". To specify to hold down SHIFT while E is pressed, followed by C without SHIFT, use "+EC".

To specify repeating keys, use the form {key number}. You must put a space between key and number. For example, {LEFT 42} means press the LEFT ARROW key 42 times; {h 10} means press H 10 times.

Ex. $type$This is a test, {ENTER}this is only a test
	 This will type this 
This is a test,
this is only a test

$mousepos$
This command will move the mouse the desired position on the screen. The position is based on your screen resolution. For example: if your resolution is 1024x768, then the position can be anywhere between 0x0 and 1023x767. There is a position indicator at the bottom right of the script editor. Enter the location x y.

Ex. $mousepos$40 65

$mousemove$
This command will move the mouse a specified distance from its current position. Enter the move x y.

Ex. $mousemove$32 54

$mouseclick$
This command will click a mouse button. Use the following parameters:

Code:	What it does:

Left	Clicks the left mouse button

Leftup	Presses the left mouse button down

Leftdown	Releases the left mouse button

Middle	Clicks the middle mouse button

Middleup	Presses the middle mouse button down

Middledown	Releases the middle mouse button

Right	Clicks the right mouse button

Rightup	Presses the right mouse button down

Rightdown	Releases the right mouse button

Ex. $mouseclick$Left

$wait$
This command will stop the script for x number of seconds then resume executing the script.

Ex. $wait$10
	 This will wait 10 seconds

$minwin$
This command will minimize the current window.

Ex. $minwin$

$maxwin$
This command will maximize the current window.

Ex. $maxwin$

$restorewin$
This command will restore the current window from the task bar to its original position.

Ex. $restorewin$

$closewin$
This command will close the current window.

Ex. $closewin$

$reboot$
This command will reboot the computer. 

Ex. $reboot$

WARNING: This command will cause Windows to immediately reboot the computer, without confirmation; any unsaved data will be lost and any commands that follow this will not be executed.

$shutdown$
This command will shutdown the computer.

Ex. $shutdown$

WARNING: This command will cause Windows to immediately shutdown the computer, without confirmation; any unsaved data will be lost and any commands that follow this will not be executed.

$logoff$
This command will logoff the current user.

Ex. $logoff$

$start$
This command will start Voice Flux listening for commands.

Ex. $start$

$stop$
This command will stop Voice Flux listening for commands.

Ex. $stop$

$exitnvf$
This command will exit Voice Flux. 

Ex. $exitnvf$

NOTE: Any commands after this command will not be executed.